package com.dpteam.service;

import com.dpteam.bean.UserInfo;
import com.dpteam.model.Role;
import com.dpteam.model.User;
import com.dpteam.util.Page;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * Created by YangZhi on 2016/1/10.
 * 用户管理模块
 */
public interface UserManageService {

    /**
     * 添加一个用户
     *
     * @param userInfo
     * @return
     */
    int addUser(UserInfo userInfo);

    /**
     * 删除一个用户
     *
     * @param userId
     * @return
     */
    int deleteUserById(Integer userId);

    /**
     * 更新一个用户信息
     *
     * @param userInfo
     * @return
     */
    int updateUserById(UserInfo userInfo);

    /**
     * 查找所有用户
     *
     * @return
     */
    List<User> findUserAll();

    /**
     * 查找所有用户（分页）
     *
     * @param page
     * @return
     */
    List<User> findUserAllPage(Page page);

    /**
     * 按角色查询用户
     */
    List<User> findUserByRoleId(int roleId);

    /**
     * 查询全部用户
     * @return
     */
    List<UserInfo> findAll();

    /**
     * 更新用户信息
     * @param userId
     * @param userName
     * @param userEmail
     * @param userPhoneNumber
     */
    void updateUser(int userId, String userName, String userEmail, String userPhoneNumber);
    void updateUserInfo(MultipartFile fileField,String phone, String email,String dir) throws Exception;

}
